/*
 * Seeker.h
 *
 *  Created on: Jun 11, 2011
 *      Author: wilsok17
 */

#include <utility>
#include <string>
#include <list>
#include "../Yogurt/DataObjects.h"
using namespace std;

#ifndef SEEKER_H_
#define SEEKER_H_

class Seeker {
private:
	int seekerID_;
	list<pair<string, DIRECTION> > seekerRoute_;
	int currentStep_;
public:
	Seeker(int id);
	SeekerReport intersectionReached();
	SeekerReport reportIntersection();
	SeekerReport reportIED();
	SeekerReport reportObstruction();
	void receiveInstructions(list<pair<string, DIRECTION> > seekerRoute);

	virtual ~Seeker();
};

#endif /* SEEKER_H_ */
